<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="keywords" content="数独技巧,组合排除法( Combination Elimination Technique),数独解法,数独游戏,sudoku" />
<meta http-equiv="description" content="数独游戏的技巧组合排除法( Combination Elimination Technique)"/>
<title>数独游戏技巧 组合排除法( Combination Elimination Technique) 数独解法 Sudoku</title>
<link href="css.css" rel="stylesheet" type="text/css" />
</head>

<body>

<div id="main">

  <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td style="padding-right: 10px;"><h3>数独游戏技巧（Sudoku）</h3><br />
      
        <table width="100%" border="0" cellpadding="5" cellspacing="0" bgcolor="#ECE9D8">
          <tr>
            <td width="50%" valign="top"><a href="sk_1.htm">单元唯一法( Sole Position Technique ) </a><br />
            <a href="sk_2.htm">单元排除法( Basic Elimination Technique )</a> <br />
            <a href="sk_3.htm">区块排除法( Block Elimination Technique )</a> <br />
            <a href="sk_4.htm">唯一余数法( Sole Number Technique )</a> <br />
            组合排除法( Combination Elimination Technique) <br />
            <a href="sk_6.htm">矩形排除法( Rectangle Elimination Technique)</a> <br />
            <a href="sk_7.htm">显式唯一法 (Naked Single) </a><br />
            <a href="sk_8.htm">隐式唯一法 (Hidden Single) </a><br />
            <a href="sk_9.htm">区块删减法 (Intersection   Removal) </a><br />
            <a href="sk_10.htm">显式数对法 (Naked Pair) </a><br />
            </td>
            <td valign="top"><a href="sk_11.htm">显式三数集法 (Naked Triplet) </a><br />
            <a href="sk_12.htm">显式四数集法 (Naked Quad) </a><br />
            <a href="sk_13.htm">隐式数对法 (Hidden Pair) </a><br />
            <a href="sk_14.htm">隐式三数集法 (Hidden Triplet) </a><br />
            <a href="sk_15.htm">隐式四数集法 (Hidden Quad) </a><br />
            <a href="sk_16.htm">矩形对角线法 (X-wing) </a><br />
            <a href="sk_17.htm">XY形态匹配法(XY-wing) </a><br />
            <a href="sk_18.htm">XYZ形态匹配法(XYZ-wing) </a><br />
            <a href="sk_19.htm">三链数删减法 (Swordfish) </a><br />
            <a href="sk_20.htm">WXYZ形态匹配法(WXYZ-wing) </a></td>
          </tr>
        </table>
        <br />
        <h3>组合排除法( Combination Elimination Technique)</h3>
        <p><strong>组合排除法</strong>和<a href="sk_3.htm">区块排除法</a>一样，都是直观法中进阶的技法，但它的应用范围要更小一点。一般情况下，基本没有机会用到这种方法解题，所以要找到相应的例子也都很困难。当然，如果你希望优先以这个技法来解题的话，还是能碰到很多能符合使用组合排除法条件的情况。</p>
        <p><strong>组合排除法</strong>，顾名思义，要考虑到某种组合。这里的组合既包括区块与区块的组合，也包括单元格与单元格的组合，利用组合的关联与排斥的关系而进行某种排除。它也是一种模糊排除法，同样是在不确定数字的具体位置的情况下进行排除的。下面先看一个例子：</p>
        <div><img alt="" src="images/sk_5_1.gif" /> </div>
        <p>对于上面这个谜题，你能确定数字6在起始于[G4]的区块中的位置吗？</p>
        <p>要想获得正确的答案初看起来有些困难。因为虽然在[G9]和[H3]已经存在了两个6，但是利用它们只能行排除区块中的[G4]和[H6]两个单元格，还是无法确定6到底是在[I4]还是在[I5]中。这时候，<strong>组合排除法</strong>就派上用场了。</p>
        <p>现在撇开起始于[G4]的区块，先看它上面的两个区块，即起始于[A4]和[D4]的区块。这几个区块的共同特点是占有同样的几列，也就是第4列至第6列，因此它们之间的数字会相互直接影响。</p>
        <div><img alt="" src="images/sk_5_2.gif" /> </div>
        <p>对于起始于[A4]的区块，利用[A1]处已有的数字6进行行排除，可以得到这个区块中可能填入6的位置只剩下两个：[B5]和[C6]。   对于起始于[D4]的区块，利用[E7]处已有的数字6进行行排除，可以得到这个区块中可能填入6的位置也剩下两个：[F5]和[F6]。 </p>
        <p>这时，我们仍无法确定6在这两个区块中的确切位置。但不妨对可能出现的情况作一下分析：</p>
        <ul>
          <li>假设在起始于[A4]的区块中，[B5]=6，则同一区块中的[C6]必不为6，而且[B5]还将列排除[F5]，这样在起始于[D4]的区块中，只有[F6]=6。 </li>
          <li>假设在起始于[A4]的区块中，[C6]=6，则同一区块中的[B5]必不为6，而且[C6]还将列排除[F6]，这样在起始于[D4]的区块中，只有[F5]=6。 <br />
        </li>
        </ul>
        <p>简单地说，只有两种可能：[B5]=6且[F6]=6，或者[C6]=6且[F5]=6。决不会再出现其他的情况。但无论是其中哪一种情况，第5列和第6列都会有确定的6出现在这两个区块中，也就是说，第5列和第6列的其他位置不可能再出现数字6。这样，原本无法肯定的6在起始于[G4]区块中的位置，一下子就变得明确了。</p>
        <div><img alt="" src="images/sk_5_3.gif" /> </div>
        <p>利用起始于[A4]和[D4]的区块对起始于[G4]的区块进行列排除，可以把[I5]排除掉，这样，就只剩下[I4]可以填入6了。</p>
        <p>小结一下，组合排除法的要满足的条件如下：</p>
        <ul>
          <li>如果在横向并行的两个区块中，某个数字可能填入的位置正好都分别占据相同的两行，则这两行可以被用来对横向并行的另一区块做行排除。 </li>
          <li>如果在纵向并行的两个区块中，某个数字可能填入的位置正好都分别占据相同的两列，则这两列可以被用来对纵向并行的另一区块做列排除。 <br />
        </li>
        </ul>
        <p>让我们再看一个例子：</p>
        <div><img alt="" src="images/sk_5_4.gif" /> </div>
        <p>要想确定数字1在起始于[D4]的单元格中的位置，我们将设法借助于其横向上相邻两个区块的帮助。</p>
        <div><img alt="" src="images/sk_5_5.gif" /> </div>
        <p>利用[I2]的列排除，我们可以把起始于[D1]的区块中的[E2]和[F2]排除掉，这样，这个区块中能填入1的位置剩下[D1]，[D3]和[E1]。   利用[H7]的列排除，可以把起始于[D7]的区块中的[E7]和[F7]排除掉，再利用[A9]的列排除，可以把这个区块中[E9]和[F9]排除掉，这样，这个区块中能填入1的位置只剩下[D8]和[E8]。</p>
        <p>虽然在起始于[D1]的区块中，能填入1的位置多达3个，但是它们正好只分布在行D和行E上，而且在起始于[D7]的区块中能填入1的位置所占据的也是这两行。最终1的位置只可能有三种情况：[D1]=1且[E8]=1；或者[D3]=1且[E8]=1；或者[E1]=1且[D8]=1。无论是哪种情况，行D和行E都会有确定的1出现在这两个区块中，也就是说，这两行的其他位置不会再出现1。于是，</p>
        <div><img alt="" src="images/sk_5_6.gif" /> </div>
        <p>借助于这两个区块的行排除，我们可以把起始于[D4]的区块中的[D4]和[D6]排除掉，再利用[G4]位置的列排除，最终确定1的位置在[F6]。<br />
        </p>
        <p>下面是其他一些使用<strong>组合排除法</strong>的例子：</p>
        <div><img alt="" src="images/sk_5_7.gif" /> <br />
            <img alt="" src="images/sk_5_8.gif" /> <br />
        <img alt="" src="images/sk_5_9.gif" /> </div>
      <p>在实践中，<strong>组合排除法</strong>的实际应用机会不如<a href="sk_3.htm">区块排除法</a>多。但是，掌握这一技法无疑可以大大提高求解谜题的灵活性，从而增加解题的乐趣。</p></td>
      <td width="180" valign="top" ><table width="100%" border="0" cellpadding="5" cellspacing="0" bgcolor="#ECECEC">
        <tr>
          <td><a href="index.htm">数独(Sudoku)介绍</a><br />
            <a href="rule.htm">数独规则</a><br />
            <a href="skill.htm">数独技巧</a><br />
            </td>
        </tr>
      </table>
        </td>
    </tr>
  </table>
  
  
  
</div>

</body>
</html>
